#ifndef _GT911_H
#define	_GT911_H    
#include "gt911iic.h"
//相关IO定义
#define u8 unsigned char
#define u16 unsigned short
	
#if 0
////////////IO操作函数	 
//#define CT_RST    		PIout(8)	//GT911复位引脚
//#define CT_INT    		PHin(7) 	//GT911中断引脚	
//////////////////////////////////////////////////////////////////////////////////	 
#define CT_CMD_WR		0XBA	//写数据命令
#define CT_CMD_RD   	0XBB	//读数据命令

#define GT_GSTID_REG 	0X814E   	//GT911当前检测到的触摸情况
#define GT_TP1_REG 		0X8150  	//第一个触摸点数据地址
#define GT_TP2_REG 		0X8158		//第二个触摸点数据地址
#define GT_TP3_REG 		0X8160		//第三个触摸点数据地址
#define GT_TP4_REG 		0X8168		//第四个触摸点数据地址
#define GT_TP5_REG 		0X8170		//第五个触摸点数据地址  
//#define CT_EXCHG_XY		1		//调转XY坐标

//#define CT_MAX_TOUCH    5		//电容触摸屏最大支持的点数

////电容触摸屏控制器
//typedef struct
//{
//	void   (*init)(void);			//初始化触摸屏控制器
//	u8 (*scan)(void);			//扫描触摸屏    
//	u16 x[CT_MAX_TOUCH];		//触摸X坐标
//	u16 y[CT_MAX_TOUCH];		//触摸Y坐标
// 	u8	ppr[CT_MAX_TOUCH];		//触摸点的压力	 
//	u8 tpsta;					//触摸屏状态
//								//[0]:0,触摸点0无效;1,触摸点0有效
//								//[1]:0,触摸点1无效;1,触摸点1有效
//								//[2]:0,触摸点2无效;1,触摸点2有效
//								//[3]:0,触摸点3无效;1,触摸点3有效
//								//[4]:0,触摸点4无效;1,触摸点4有效
//								//[5:6]:保留
//								//[7]:0,没有有效触摸;1,有有效触摸,可以读出数据
//   u8 flag;				   	    	  
//}_m_ctp_dev;
//extern _m_ctp_dev ctp_dev;
u8 GT911_WR_Reg(u16 reg,u8 *buf,u8 len);
void GT911_RD_Reg(u16 reg,u8 *buf,u8 len);
void GT911_Init(void);
u8 GT911_Scan();
#else

//I2C读写命令	
#define GT_CMD_WR		0XBA	//写数据命令
#define GT_CMD_RD   	0XBB	//读数据命令
  
//GT911 部分寄存器定义 
#define GT_CTRL_REG 	0X8040   	//GT911控制寄存器
#define GT_CFGS_REG 	0X8047   	//GT911配置起始地址寄存器
#define GT_CHECK_REG 	0X80FF   	//GT911校验和寄存器
#define GT_PID_REG 		0X8140   	//GT911产品ID寄存器

#define GT_GSTID_REG 	0X814E   	//GT911当前检测到的触摸情况
#define GT_TP1_REG 		0X8150  	//第一个触摸点数据地址
#define GT_TP2_REG 		0X8158		//第二个触摸点数据地址
#define GT_TP3_REG 		0X8160		//第三个触摸点数据地址
#define GT_TP4_REG 		0X8168		//第四个触摸点数据地址
#define GT_TP5_REG 		0X8170		//第五个触摸点数据地址  
 
 
u8 GT911_Send_Cfg(u8 mode);
u8 GT911_WR_Reg(u16 reg,u8 *buf,u8 len);
void GT911_RD_Reg(u16 reg,u8 *buf,u8 len); 
u8 GT911_Init(void);
u8 GT911_Scan(); 

#endif

#endif
